package controller;

import java.util.Iterator;
import java.util.Set;

import javax.swing.JList;

import model.donnee.MembreExecutif;
import model.donnee.MembreFilm;

import view.ConsultationMembreExecutif;

public class ConsultationMembreExecutifListener extends AbstractCommand {

	private Set<MembreFilm> membreExecutif;
	private JList<String> lstMembreExecutif = new JList<String>();

	public ConsultationMembreExecutifListener(Set<MembreFilm> membreExecutif,
			JList<String> lstMembreExecutif) {
		this.membreExecutif = membreExecutif;
		this.lstMembreExecutif = lstMembreExecutif;
	}

	public void execute() {
		// Récupère l'index de la liste.
		int index = lstMembreExecutif.getSelectedIndex();
		
		// Valide si un élément a été sélectionné.
		if (index >= 0) {
			Iterator<MembreFilm> it = membreExecutif.iterator();
			MembreExecutif membre = null;
			
			// Récupère le membre exécutif sélectionné.
			while (it.hasNext()) {
				MembreFilm temp = (MembreFilm) it.next();
				if ((temp.getIdMembreExecutif().getPersonne().getNom() + ", " + temp
						.getIdMembreExecutif().getPersonne().getPrenom())
						.equals(lstMembreExecutif.getSelectedValue())) {
					membre = temp.getIdMembreExecutif();
				}
			}

			// Affiche les informations du membre.
			new ConsultationMembreExecutif(membre);
		}
	}

}
